/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package util;

/**
 *
 * @author Ruben
 */
public class Token {
    
    TipoToken tipo;
    String cadenaValor;
    int numeroValor;
    

    public Token() {
    }

    public Token(TipoToken tipo, String CadenaValor) {
        this.tipo = tipo;
        this.cadenaValor = CadenaValor;
    }

    public Token(TipoToken tipo, int NumeroValor) {
        this.tipo = tipo;
        this.numeroValor = NumeroValor;
    }

    public String getCadenaValor() {
        
        return cadenaValor;
    }

    public int getNumeroValor() {
        return numeroValor;
    }

    public TipoToken getTipo() {
        return tipo;
    }

   public boolean equals(Object obj) {
       
       boolean valor=false;
       
	if (obj instanceof Token) {
	    Token tok = (Token) obj;

	   if (this.tipo.equals(tok.tipo) && ((this.cadenaValor == null && tok.cadenaValor == null)
                || this.cadenaValor.equals(tok.cadenaValor)) && this.numeroValor == tok.numeroValor){
               valor=true;
           }
	}
	return valor;
    }
   
   public String toString() {
	
       return "Tipo de Token: " + getTipo() + " Cadena: " + getCadenaValor() + " Numero " + getNumeroValor();
    }
   
    
    
}
